package com.kunbo.cn.util.tree;

import java.util.ArrayList;
import java.util.List;

import com.kunbo.cn.entity.system.Depart;

public class TreeUtil {
	public List data(List<Depart> nodes) {
        ArrayList<Depart> rootNode = new ArrayList<Depart>();
             for(Depart node:nodes){
                  if(node.getPid().equals("0")){
                        rootNode.add(node);
                  }
             }
             for(Depart node:rootNode){
                 List<Depart> child = getChild(String.valueOf(node.getId()), nodes);
                 node.setChildren(child);
             }
             return rootNode;
    }


    /**
     * @return
     * @Author
     * @Description //TODO 获取根节点的子节点
     * @Date 2018/10/30 0030 下午 11:37
     * @Param
     */
    public List<Depart> getChild(String id, List<Depart> allNode) {
        //存放子菜单的集合
        ArrayList<Depart> listChild = new ArrayList<>();
        for (Depart node : allNode) {
            if (node.getPid().equals(id)) {
                listChild.add(node);
            }
        }
        //递归：
        for (Depart node : listChild) {
            node.setChildren(getChild(String.valueOf(node.getId()), allNode));
        }
        if (listChild.size() == 0) {
            return null;
        }
        return listChild;
    }

}
